/* ************************************************************************** */
/*                                                                            */
/*                                                        :::      ::::::::   */
/*   list_max.h                                         :+:      :+:    :+:   */
/*                                                    +:+ +:+         +:+     */
/*   By: Jiang <767280080@qq.com>                   +#+  +:+       +#+        */
/*                                                +#+#+#+#+#+   +#+           */
/*   Created: 2024/04/23 11:47:52 by Jiang             #+#    #+#             */
/*   Updated: 2024/04/23 11:47:52 by Jiang            ###   ########.fr       */
/*                                                                            */
/* ************************************************************************** */

#ifndef __list_max__
#define __list_max__

template <typename T>
ListNodePosi<T> List<T>::takeMax(ListNodePosi<T> p, Rank n) {
  ListNodePosi<T> max = p;
  for (ListNodePosi<T> cur = p; n > 1; --n)
    if (not((cur = cur->next)->data < max->data))
      max = cur;
  return max;
}

#endif // !__list_max__
